<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:cc="http://java.sun.com/jsf/composite"
      xmlns:p="http://primefaces.org/ui"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:ezcomp="http://java.sun.com/jsf/composite/ezcomp"
      xmlns:f="http://java.sun.com/jsf/core">

    <!-- INTERFACE -->
    <cc:interface>
        <cc:attribute name="pojo" type="pojos.PersonaVO" />
        <cc:attribute name="capturaCorreo" type="java.lang.Boolean" default="false" />
        <cc:attribute name="capturaCategoria" type="java.lang.Boolean" default="false" />
    </cc:interface>

    <!-- IMPLEMENTATION -->
    <cc:implementation>
        <h:panelGrid columns="3" cellpadding="5">
            <p:outputLabel value="Tipo persona" for="slcTipoPersona" />
                <p:selectOneMenu id="slcTipoPersona" value="#{cc.attrs.pojo.tipoPersona}">  
                    <f:selectItem itemLabel="Física" itemValue="F" />  
                    <f:selectItem itemLabel="Moral" itemValue="M" />
                    <p:ajax update="dtsPersona" listener="#{capturaPersona.cambioTipoPersona(cc.attrs.pojo.tipoPersona)}" />
                </p:selectOneMenu>
            <p:message for="slcTipoPersona" />
            <p:outputLabel value="Nombre" for="txtNombre" />
            <p:inputText id="txtNombre" value="#{cc.attrs.pojo.nombre}" required="true"/>
            <p:message for="txtNombre"/>
        </h:panelGrid>   
        <p:outputPanel id="dtsPersona">
            <h:panelGrid columns="3" cellpadding="5" rendered="#{capturaPersona.esFisica}">
                <p:outputLabel value="Apellido paterno" for="txtApellidoPat" />
                <p:inputText id="txtApellidoPat" value="#{cc.attrs.pojo.apellidoPat}" />
                <p:message for="txtApellidoPat"/>
                <p:outputLabel value="Apellido materno" for="txtApellidoMat" />
                <p:inputText id="txtApellidoMat" value="#{cc.attrs.pojo.apellidoMat}" />
                <p:message for="txtApellidoMat"/>
                <p:outputLabel value="Sexo" for="slcSexo" />
                <p:selectOneMenu id="slcSexo" value="#{cc.attrs.pojo.sexo}">  
                    <f:selectItem itemLabel="Masculino" itemValue="M" />  
                    <f:selectItem itemLabel="Femenino" itemValue="F" />  
                </p:selectOneMenu>
                <p:message for="slcSexo"/>
                <p:outputLabel value="Fecha de nacimiento" for="calFechaNac" />
                <p:calendar id="calFechaNac" value="#{cc.attrs.pojo.fechaNac}" navigator="true" readonlyInput="true" />
                <p:message for="calFechaNac"/>
            </h:panelGrid>
        </p:outputPanel>
        <h:panelGrid columns="3" cellpadding="5">
            <p:outputLabel value="Descripción" for="txtDescripcion" />
            <p:inputText id="txtDescripcion" value="#{cc.attrs.pojo.descripcion}" />
            <p:message for="txtDescripcion"/>
            <p:outputLabel value="Teléfono" for="txtTelefono" />
            <p:inputText id="txtTelefono" value="#{cc.attrs.pojo.telefono}" />
            <p:message for="txtTelefono"/>
            <p:outputLabel value="Correo" for="txtCorreo" />
            <p:inputText id="txtCorreo" value="#{cc.attrs.pojo.correo}" disabled="#{cc.attrs.capturaCorreo}" />
            <h:panelGroup />
            <p:selectCheckboxMenu label="Categorías" filter="true" filterMatchMode="startsWith" 
                                  rendered="#{cc.attrs.capturaCategoria}" value="#{cc.attrs.pojo.categoria}">
                <f:selectItems value="#{crearCatCtrl.categorias}" />
            </p:selectCheckboxMenu>
            
       
                
         </h:panelGrid>
        <ezcomp:capturaDireccion pojo="#{cc.attrs.pojo.direccion}" />
    </cc:implementation>
</html>